GPS Satellite signals are transmitted using direct sequence spread spectrum (“DSSS”) signaling that spreads the transmitted data across a bandwidth much larger than the original data bandwidth. In binary DSSS communication, a wide-band carrier is generated by bi-phase modulation of a single frequency carrier using a binary pseudo-random noise sequence (the “P/N code”). For example, the generated P/N code is applied to a balanced modulator whose other input signal is a single-frequency (narrow-band) carrier. The modulator output is then the wide-band carrier. To communicate data, the wide-band carrier is bi-phase modulated by a binary message data stream. The message data rate is usually much lower than the P/N-code symbol or “chip” rate, and the data and code-chip edges are usually synchronized.
At the receiver, a DSSS signal is processed by mixing the received signal with a locally-generated narrow-band carrier in order to shift the wideband signal center frequency down to “base-band” (0 Hz). If the frequency (and phase) of the local carrier matches that of the received signal (when there is no data or P/N code modulation), then the mixer output signal will be the wide-band data stream that is the product of the P/N code and the message-data sequence. The P/N code is then removed by multiplying the wide-band data stream with a locally-generated replica of the P/N code that is time aligned with the received P/N code. This multiplication is the so-called “data de-spreading process” and yields the original message data. More importantly, the relative alignment of the P/N codes received from different satellites indicates the position of the receiver on the surface of the earth.
A difficult task associated with the de-spreading process is aligning the carrier replica with proper carrier frequency and phase as well as generating the P/N code replica at the proper rate and with proper time alignment (“code offset”). In many DSSS communication systems, the necessary carrier frequency, carrier phase, and P/N code offset are not known a priori at the receiver and these parameters are determined by trying different values from a finite set until a large signal is observed at the data-filter output. A DSSS signal is said to be acquired when the proper frequency, phase and code offset have been determined.
In GPS communication, each satellite transmits a single high-resolution DSSS signal on frequency L2 and the same signal plus another lower-resolution DSSS signal on frequency L1. The low and high-resolution codes are known as the course/acquisition (“C/A”) and precise (“P”) codes, respectively. The high resolution service is typically reserved for military use while the low-resolution service is unrestricted. The low-resolution DSSS signal comprises a P/N code with a 1.023 MHz chipping rate, a 1.0 ms repetition period and a message data sequence (the NAV data) with a rate of 50 bits per second. Since the C/A code repeats every 1.0 ms, there can be 1023 different code offsets to search (2046 if the search is performed in half-chip steps).
The received satellite signal frequency includes a typically substantial Doppler shift as the result of the satellite's velocity in orbit. The Doppler shift may be as large as ±7.5 kHz and must be accounted for successful signal acquisition. The Doppler frequency identification can be done by searching the expected frequency range for each satellite. For example, a ±7.5 kHz frequency range can be searched with thirty 500 Hz steps by repeatedly cross-correlating the received signal with the locally-generated P/N sequence for different carrier frequencies. Thus, GPS acquisition entails cross correlation of the satellite code, code offset and Doppler frequency.
Near the earth's surface, the received wideband satellite signals are very weak and are buried in noise. However, after correct de-spreading (i.e., multiplication by the correct P/N code and Doppler replica), the de-spread signal bandwidth is reduced to just the message-data bandwidth. Receiver noise is then reduced by integrating the de-spread signal over some portion of the message bit period. It is only after the noise has been reduced that one can detect the signal presence and thus determine whether the signal has been properly de-spread. This means that the de-spreading and acquisition process is a search over replica code (satellite ID) and code phase, and over replica carrier frequency and phase. Because there are many possible codes, code phases, and Doppler shifts, the de-spreading and acquisition search can be take much time and energy.